#!/usr/bin/env python
# -*- coding: UTF-8 -*-

import unittest
import time
from utility.Graderead import *
from utility import base

"""
    1,热启动APP进入中间tab点击顶部我的课程
    2，检查是否进入布克阅读首页
    3，点击首页右上角分享按钮
    4，点击进入历史记录页面
    4，校验用户是否进入正确页面
    ps：开始之前查看登录用户刚好是已付费已加群用户
"""

class GradeShareTests(base.BaseTests):

    def test_read_share(self):
        print ('布克阅读')
        time.sleep(0.5)
        self.tap_tab_index(2)

        time.sleep(0.5)

        my_less_tab = self.driver.find_element_by_xpath(Gradereading.enbt_loc)
        self.assertIsNotNone(my_less_tab, u'顶部应该存在一个[我的课程]按钮')
        my_less_tab.click()

        time.sleep(0.25)

        booker_cell = self.driver.find_element_by_xpath(Gradereading.enRead_loc)
        if booker_cell: booker_cell.click()
        time.sleep(1)
        #在首页找分享按钮并点击
        share_icon = self.driver.find_element_by_xpath(Gradereading.share_loc)
        self.assertIsNotNone(share_icon, u'顶部应该存在一个分享按钮')
        print ('找到分享按钮')
        share_icon.click()

        #进入分享页面 进行断言是都正确进入
        time.sleep(5)
        share_wxfrineds = self.driver.find_element_by_xpath(Gradereading.shareFriend_loc)
        self.assertIsNone(share_wxfrineds,u'没有找到分享给微信好友，进入错误页面')
        self.driver.save_screenshot("/Users/fisher/workspace/codes/QA/testimg/Homeshare.png")
        print ('找到分享按钮 进入正确页面 成功')

        #进入历史记录页面 校验是否进入正确页面
        time.sleep(3)
        history_list = self.driver.find_element_by_xpath(Gradereading.histry_loc)
        self.assertIsNone(history_list,u'没有找到分享历史，进入错误页面')
        history_list.click()
        self.driver.save_screenshot("/Users/fisher/workspace/codes/QA/testimg/sharehistorylist.png")
        print ('找到分享历史页面 进入正确页面 成功')
        time.sleep(3)
        free_days = self.driver.find_element_by_xpath(Gradereading.freeday_loc)
        self.assertIsNone(free_days,u'没有找到免费天数，进入错误页面')
        print ('找到免费天数，成功进入预期页面')

        #点击返回按钮回到上一页面
        self.driver.find_element_by_xpath(u'//XCUIElementTypeButton[@name="backIconwhite@2x"]').click()
        if history_list:
            time.sleep(0.5)
            self.driver.find_element_by_xpath(u'//XCUIElementTypeButton[@name="backIconwhite@2x"]').click()
            print ('点击返回按钮 回到布克阅读首页')




if __name__ == '__main__':
    test_suite = unittest.TestLoader().loadTestsFromTestCase(GradeShareTests)
    unittest.TextTestRunner().run(test_suite)